Determining a demographic attribute value of an online document visited by users

ABSTRACT

A demographic attribute value of a sink online document may be determined by (a) accepting a value(s) of the demographic attribute of a source online document, (b) accepting, for each of the source online documents having an accepted demographic attribute value, a probability that a user will visit or has visited the sink online document if the user visited the source online document, and (c) determining the demographic attribute value of the sink online document using the demographic attribute value of each of the source online documents and the probabilities. A demographic attribute value of the sink online document may also be determined using the above information and using the demographic attribute value of each of the source online documents and the probabilities that a user will visit or has visited the sink online document if the user visited the other online document.

§1. BACKGROUND OF THE INVENTION

§1.1 Field of the Invention

The present invention concerns determining demographic information. Inparticular, the present invention concerns probabilistically determiningdemographic information for a domain, such as a Website for example.

§1.2 Background Information

Demographic targeting is an important mode of targeting used byadvertisers. Currently, demographic information is typically onlyavailable for large Websites on the Internet. This is likely because thethird parties that supply demographic information do so using a panel of50,000-100,000 users. Consequently, these third parties can only getstatistically significant user data for large Websites. This means thatthere is no way for these third parties to infer the user demographicsfor the vast majority of Websites on the Internet. This is unfortunate,because having reliable Internet-wide demographics, would enable moreadvertising revenue to become available to smaller Websites, instead ofjust the large ones for which demographics are known.

Naturally, small Websites could self-describe their demographics.However, advertisers would probably not trust data supplied directly bythe Website owner. For example, Website owners have an incentive to say“My visitors are all spendthrift millionaires”, whether or not this istrue, in order to attract high-revenue advertisements.

§2. SUMMARY OF THE INVENTION

Embodiments consistent with the present invention determine ademographic attribute value of a sink online document. At least someembodiments may do so by (a) accepting a value(s) of the demographicattribute, each of the demographic attribute value(s) being associatedwith a source online document (one having a value for the demographicattribute), (b) accepting, for each of the source online documentshaving an accepted demographic attribute value, a probability that auser will visit or has visited the sink online document if the uservisited the source online document, and (c) determining the demographicattribute value of the sink online document using (i) the accepteddemographic attribute value of each of the source online documents and(ii) the accepted probabilities.

At least some other embodiments consistent with the present inventionmay determine a demographic attribute value of a set of one or more sinkonline documents by (a) accepting value(s) of the demographic attribute,each of the demographic attribute value(s) being associated with asource online document, (b) accepting, for each of the sink onlinedocument(s), and for each of a plurality of other sink and source onlinedocuments, a probability that a user will visit or has visited the sinkonline document if the user visited the other online document, (c)determining, for each of the sink online document(s), the demographicattribute value of the sink online document using (i) the accepteddemographic attribute value of each of the source online documents and(ii) the accepted probabilities that a user will visit or has visitedthe sink online document if the user visited the other online document,and (d) for each of the sink online document(s), determining an updateddemographic attribute value of the sink online document using (i) thedemographic attribute value of each of the source online documents andthe determined demographic attribute value of each of the other sinkonline documents and (ii) the accepted probabilities that a user willvisit or has visited the sink online document and each of the otheronline documents. In at least some embodiments consistent with thepresent invention, the act of act determining an updated demographicattribute value of each sink online document is repeated at least once.For example, this act may be repeated until the updated demographicattribute values don't change from the previously determined updateddemographic attribute values.

In at least some embodiments consistent with the present invention, thedocuments may be Web pages, or Websites, for example.

§3. BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a bubble diagram illustrating various operations that may beperformed, and various information that may be used and/or generated, byembodiments consistent with the present invention.

FIG. 2 is a flow diagram of an exemplary method that might be used toprobabilistically estimate demographic information of a domain orWebsite in a manner consistent with the present invention.

FIG. 3 is a flow diagram of an exemplary method that might be used togenerate a first probabilistic estimation of demographic information ofa domain or Website in a manner consistent with the present invention.

FIG. 4 is a flow diagram of an exemplary method that might be used togenerate a final best probabilistic estimation of demographicinformation of a domain or Website in a manner consistent with thepresent invention.

FIG. 5 is a block diagram of an exemplary apparatus that may performvarious operations and store information in a manner consistent with thepresent invention.

§4. DETAILED DESCRIPTION

The present invention may involve novel methods, apparatus, messageformats, and/or data structures for probabilistically determiningdemographic information of a domain, such as a Website for example, byusing a set of source domains with known demographic information andpair-wise relations between such source domains and one or more sinkdomains for which demographic information is to be inferred. Thefollowing description is presented to enable one skilled in the art tomake and use the invention, and is provided in the context of particularapplications and their requirements. Thus, the following description ofembodiments consistent with the present invention provides illustrationand description, but is not intended to be exhaustive or to limit thepresent invention to the precise form disclosed. Various modificationsto the disclosed embodiments will be apparent to those skilled in theart, and the general principles set forth below may be applied to otherembodiments and applications. For example, although a series of acts maybe described with reference to a flow diagram, the order of acts maydiffer in other implementations when the performance of one act is notdependent on the completion of another act. Further, non-dependent actsmay be performed in parallel. No element, act or instruction used in thedescription should be construed as critical or essential to the presentinvention unless explicitly described as such. Also, as used herein, thearticle “a” is intended to include one or more items. Where only oneitem is intended, the term “one” or similar language is used. In thefollowing, “information” may refer to the actual information, or apointer to, identifier of, or location of such information. Thus, thepresent invention is not intended to be limited to the embodiments shownand the inventors regard their invention to include any patentablesubject matter described.

In the following, exemplary environments in which, or with which,exemplary embodiments consistent with the present invention may operate,are described in §4.1. Then, exemplary embodiments consistent with thepresent invention are described in §4.2. Some illustrative examples ofexemplary operations of exemplary embodiments consistent with thepresent invention are provided in §4.3. Finally, some conclusionsregarding the present invention are set forth in §4.4.

§4.1 Exemplary Environment in which, or with which, ExemplaryEmbodiments Consistent with the Present Invention May Operate

FIG. 1 is a bubble diagram illustrating various operations that may beperformed, and various information that may be used and/or generated, bysuch operations in a exemplary environment in which, or with which,exemplary embodiments consistent with the present invention may operate.In particular, the demographic information of source online documents(seed Websites) 110 may be available to the probabilistic demographicinformation estimation operations 150. Further, the operations 150 mayobtain information about Websites visited by users 130 (e.g., from aclient device browser toolbar). Such user information may be used toestablish pair-wise relations between Websites by tracking usersvisiting various Websites (both source (or seed) Websites 110 and sink(or non-seed) Websites 120). Using such pair-wise relations betweenWebsites and exacted demographic information of source Websites 110, theoperations 150 may probabilistically estimate demographic information ofa sink Website 120.

Various exemplary embodiments of the present invention are now describedin §4.2 below.

§4.2 Exemplary Embodiments

FIG. 2 is a flow diagram of an exemplary method 200 that might be usedto probabilistically estimate demographic information of a domain orWebsite in a manner consistent with the present invention. Inparticular, the method 200 may accept exact demographic information froma set of source online documents (e.g., seed Websites). (Block 210)Thereafter, the method 200 may probabilistically estimate demographicinformation of sink online documents (e.g., non-seed Websites) by usingdemographic information of source online documents and the pair-wiserelationship between the documents (both sink and source onlinedocuments). (Block 220)

Referring back to block 220, the method 200 might probabilisticallyestimate demographic information as follows. Let d be a demographicsattribute, which is a function a set of Websites to a probability. Thusd(s)ε[0,1] for any Website s. In particular, d(s) is considered as theminimum probability that a pageview on Website s would satisfy thisdemographics attribute (i.e., that the pageview would be by a user withthe demographic attribute). For example, if d is the attribute “age25-34”, then d(site.com)=0.5 means that a pageview on site.com has aminimum probability of 0.5 of being generated from a visitor of age25-34.

Assume that the function d is only known for a set of source Websites Swhich is a subset of the universe of all Websites G. Embodimentsconsistent with the present invention might be used to estimate thevalues of d on other Websites.

In the following, two alternative approaches for estimating thedemographics function d—Upstream/Downstream Traffic, and UsersDemographics—are described.

§4.2.1 Upstream/Downstream Traffic Approach

In the Upstream/Downstream Traffic approach, pair-wise relations betweenWebsites are examined by tracking the users who move across the Websitesduring their browsing sessions.

Let p be a function on set of edges of the graph G, where nodes of thegraph G represent domains (e.g., Websites) or Web pages. For any twoWebsites a and b, let p(a, b) represent the probability that a pageviewat Website b is initiated by a visitor of Website a. Function p can bederived from information tracking users who have visited Website aand/or Website b. Such information may be recorded in toolbar trafficslogs. For example, if p(aa.com, bb.com)=0.1, then a pageview on bb.comhas the probability of 0.1 that it is generated by a visitor of siteaa.com.

Some embodiments consistent with the present invention might use adamping factor αε(0,1) to express how dependent or independent thetraffic is of the demographics property. Specifically, if the trafficdata is independent of the demographics property, then α would be 1 (1means no damping factor at all, which is the case when the traffic datais independent of demographics). Otherwise α would be a factor less than1 indicating some preservation of demographics property in the trafficflow. A reasonable value for α can be derived by observing thedemographics of source Websites for which there is traffic data. Forexample, if only users of a certain demographics property move fromWebsite A to Website B, and if users without this property would move toWebsite C, then α might be set close to zero for this particularproperty.

For each site t≠s, a lower-bound estimate of the demographics d on t ascontributed by s can be determined as follows:p(s,t)×d(s)×αRepeating this calculation for all pairs s, t an estimate of e(t) can beexpressed as:

${e(t)} = {\alpha{\sum\limits_{S \in G}\;{{p\left( {s,t} \right)}{{d(s)}.}}}}$

This can be repeated, using e as function d in the next iteration (e.g,until the estimate is not further improved).

One potential disadvantage of the upstream/downstream traffic approachis that it might depend on the direct clicks between Websites to inferthe demographics information. However, a Website's demographics from allthe upstream and downstream traffic could deviate from its overalldemographics. Notwithstanding such a potential deviation, if it can beassumed that such click traffic should be mostly independent of theoverall demographics, then this approach should provide usefulestimates.

§4.2.2 Users Demographics Approach

In the users demographics approach, demographics information of a useris inferred from the Websites that they visit (e.g., using client devicebrowser toolbar information). For example, if a user u visits a Websites with d(s)=0.7, then a value 0.7 can be assigned to d (u). If u visitstwo independent Websites a and b, d (u) can be estimated to be(1−d(a))(1−d(b)). However, in general, it is not easy to show that thedemographics of two Websites are independent. Further, given the factthat u visits both Websites, they cannot be assumed to be totallyindependent.

A simpler approach is to take the average of d(s) for all Websites sεSvisited by u. Let v be the visiting function where v(u, s)=1 if user uvisits Website s, and v(u,s)=0 otherwise. Thus, all Websites visited byu may be expressed as S_(u)={uεS|v(u, s)=1}. The estimated value of thedemographic for the user can be expressed as:

${e(u)} = {\frac{\sum\limits_{s \in S_{u}}\;{d(s)}}{S_{u}}.}$

This would be an estimation of the demographics of user u. Then, for anyWebsite t not in S (Note that S is the set of all Websites for whichthere is demographics information from external source, and it isdesired to estimate the demographics function of Websites not in S.),the value of the demographic attribute for the Website t may beestimated as the average value of d(u) for all visitors u ε U of Websitet:

${{e(t)} = \frac{\sum\limits_{u \in U_{t}}\;{e(u)}}{U_{t}}},$where U_(t)={uεU|v(u,t)=1}.

Thus, the users demographics approach can work with either pageviews orunique users. The above formula estimates the demographics of a randomvisitor of Website t. If frequency estimates of the visitors of Websitet are also available, then the demographics of a random pageview at theWebsite t can also be estimated.

§4.2.3 Evaluation

To evaluate the either of the foregoing approaches, given a Website s inthe source set S, the demographics of the Website s can be estimatedwith either of foregoing techniques. The estimate may then be comparedwith the given (actual) value d(s). In some conservative embodimentsconsistent with the present invention, the estimates should not exceedthe provided d(s) values for most of the Websites in S.

§4.2.4 Exemplary Methods

FIG. 3 is a flowchart illustrating an exemplary method 300 that may beused to determine a demographic attribute of a sink online documentbased on demographic attribute information of a set of source onlinedocuments in a manner consistent with the present invention. Inparticular, the method 400 may accept a set of one or more values of thedemographic attribute, each of the one or more demographic attributevalues being associated with a source online document, wherein each ofthe source online documents has a value for the demographic attribute.(Block 310) The method 300 may accept for each of the source onlinedocuments, a probability that a user will visit, or has visited, thesink online document if the user visited the source online document.(Block 320) Finally, the method 300 may determine the demographicattribute value of the sink online document using (i) the accepteddemographic attribute value of each of the source online documents and(ii) the accepted probabilities. (Block 330)

FIG. 4 is a flowchart illustrating an exemplary method 400 that may beused to determine a demographic attribute of a sink online documentbased on demographic attribute information of a set of source onlinedocuments in a manner consistent with the present invention. Inparticular, the method 400 may accept a set of one or more values of thedemographic attribute, each of the one or more demographic attributevalues being associated with a source online document, wherein each ofthe source online documents has a value for the demographic attribute.(Block 410) The method 400 may accept, for each of the one or more sinkonline documents, and for each of a plurality of other sink and sourceonline documents, a probability that a user will visit, or has visited,the sink online document if the user visited the other online document.(Block 420) Subsequently, the method 400 may determine, for each of theone or more sink online documents, the demographic attribute value ofthe sink online document using (i) the accepted demographic attributevalue of each of the source online documents and (ii) the acceptedprobabilities that a user will visit or has visited the sink onlinedocument if the user visited the other online document. (Block 430)Finally, for each of the one or more sink online documents, the method400 may determine an updated demographic attribute value of the sinkonline document using (i) the demographic attribute value of each of thesource online documents and the determined demographic attribute valueof each of the other sink online documents and (ii) the acceptedprobabilities that a user will visit or has visited the sink onlinedocument and each of the other online documents. (Block 440)

Referring back to blocks 330 and 430, the methods 300 and 400 maydetermine a demographic attribute value of the sink online documents bysumming, over all the source online documents, a product of (i) theaccepted probabilities that a user will visit, or has visited, the sinkonline document if the user visited the source online document and (ii)the demographic attribute value of the source online document. In someembodiments consistent with the present invention, the act ofdetermining, for each of the sink online documents, the demographicattribute value of the sink online document might include multiplyingthe sum by a predetermined damping factor.

Referring back to block 440, the method 400 may repeat the process ofdetermining an updated demographic attribute value of the sink onlinedocument for each of the one or more sink online documents, until theupdated demographic attribute values don't change (or don't change much,such as change less than a predetermined amount) from the previouslydetermined updated demographic attribute values.

§4.2.5 Exemplary Apparatus

FIG. 5 is high-level block diagram of a machine 500 that may perform oneor more of the operations discussed above. The machine 500 basicallyincludes one or more processors 510, one or more input/output interfaceunits 530, one or more storage devices 520, and one or more system busesand/or networks 540 for facilitating the communication of informationamong the coupled elements. One or more input devices 532 and one ormore output devices 534 may be coupled with the one or more input/outputinterfaces 530. The machine 500 may be, for example, an advertisingserver, or it may be a plurality of servers distributed over a network.

The one or more processors 510 may execute machine-executableinstructions (e.g., C or C++ running on the Solaris operating systemavailable from Sun Microsystems Inc. of Palo Alto, Calif. or the Linuxoperating system widely available from a number of vendors such as RedHat, Inc. of Durham, N.C.) to effect one or more aspects of the presentinvention. At least a portion of the machine executable instructions maybe stored (temporarily or more permanently) on the one or more storagedevices 520 and/or may be received from an external source via one ormore input interface units 530. The machine-executable instructionsmight be stored as modules (e.g., corresponding to the above-describedoperations).

In one embodiment consistent with the present invention, the machine 500may be one or more conventional personal computers. In this case, theprocessing units 510 may be one or more microprocessors. The bus 540 mayinclude a system bus. The storage devices 520 may include system memory,such as read only memory (ROM) and/or random access memory (RAM). Thestorage devices 520 may also include a hard disk drive for reading fromand writing to a hard disk, a magnetic disk drive for reading from orwriting to a (e.g., removable) magnetic disk, and an optical disk drivefor reading from or writing to a removable (magneto-) optical disk suchas a compact disk or other (magneto-) optical media.

A user may enter commands and information into the personal computerthrough input devices 532, such as a keyboard and pointing device (e.g.,a mouse) for example. Other input devices such as a microphone, ajoystick, a game pad, a satellite dish, a scanner, or the like, may also(or alternatively) be included. These and other input devices are oftenconnected to the processing unit(s) 510 through an appropriate interface530 coupled to the system bus 540. The output devices 534 may include amonitor or other type of display device, which may also be connected tothe system bus 540 via an appropriate interface. In addition to (orinstead of) the monitor, the personal computer may include other(peripheral) output devices (not shown), such as speakers and printersfor example.

Referring back to claim 1, the online documents might be documentsserved by server computers. The users 130 might access the onlinedocuments using a client device, such as a personal computer, a mobiletelephone, a mobile device, etc., having a browser. The operations 150might be performed by one or more computers.

§4.2.6 Refinements and Alternatives

The source demographic attribute information might be exact or non-exactdemographic information of a small set of large Websites. Thisinformation might be collected from the Internet surfing behavior ofopted-in panelists (e.g., 50,000-100,000 in number) whose exactdemographics are known. For each Website in this list, the informationsupplied might include one or more of the following demographicinformation: Age, Gender, Household Income, Education, # Children(Household size), Connection speed, etc. Thus, this data might be usedas “seed” data.

The surfing behavior of an extremely large number (e.g., millions) ofusers might be analyzed to compute user traffic inflows and outflows forevery Website. This data might be obtained from client software (e.g., abrowser toolbar) installed on users' computers.

Although some of the exemplary embodiments were discussed in the contextof Websites, embodiments consistent with the present invention might beused to infer demographic information in other contexts such as, forexample, domains, Web pages, documents, etc.

§4.3 Examples of Operations

A simplified example is provided to illustrate operations of anexemplary embodiment consistent with the present invention. Assume thatthe universe of all Websites, is G={S₁, S₂, S₃, S₄} and the sourceWebsites, which is a subset of G, is the following: S={S₂, S₃}.Demographic information for the source Websites are known. The followingis a sample of some demographic information for the two seed websites S₂and S₃.

Demographic property Website S₂ Website S₃ Age (20-35) 80% 60% Age(36-60) 20% 40% Gender M 85% 75% Gender F 15% 25% Household income 10%45% ($70K-$100K)

Assume that d(S) is the demographic property that “users are male”. Itis known from the table above that d(S₂)=0.85 and d(S₃)=0.75. Theobjective is to probabilistically estimate d(S₁) and d(S₄) (that is, theprobability that a page view of S₁ and S₄ will be to a male) usingpair-wise relations between Websites (represented as a probability (p(a,b)) and the estimation function

${e\left( S_{\omega} \right)} = {\alpha{\sum\limits_{S \in G}\;{{p\left( {S,S_{\omega}} \right)}{{d(S)}.}}}}$In this example, assume that the damping factor α=0.90.

The pair-wise relations between Websites are examined by tracking theusers who move across the Websites during their browser sessions. Thesepair-wise relations can be represented as a probability by p(a, b) whichsimply can be interpreted as the probability that a visit at Website “b”is initiated by a visitor of Website “a”. These probabilities can beeasily acquired from tracked user navigation (e.g., from browser clienttoolbars).

Assume that the following pair-wise relations for the above example havebeen acquired:p(S ₂ ,S ₁)=0.35p(S ₃ , S ₁)=0.50p(S ₂ , S ₄)=0.15p(S ₃ , S ₄)=0.40p(S ₄ , S ₁)=0.20p(S ₁ , S ₄)=0.10

Having all the information presented above, it is now possible toprobabilistically estimate the demographics function d(S) for allnon-seed Websites in G.

For Website S₁:

$\begin{matrix}{{e\left( S_{1} \right)} = \left. {0.9{\sum\limits_{S \in G}\;{{p\left( {S,S_{1}} \right)}{d(S)}}}}\rightarrow{e\left( S_{1} \right)} \right.} \\{= {0.90\left( {{{p\left( {S_{2},S_{1}} \right)}{d\left( S_{2} \right)}} + {{p\left( {S_{3},S_{1}} \right)}{d\left( S_{3} \right)}}} \right)}} \\{= \left. {0.90\left( {{0.35 \cdot 0.85} + {\cdot 0.50 \cdot 0.75}} \right)}\rightarrow{e\left( S_{1} \right)} \right.} \\{= 0.61}\end{matrix}$

For Website S₄:

$\begin{matrix}{{e\left( S_{4} \right)} = {{0.9{\sum\limits_{S \in G}\;{{p\left( {S,S_{4}} \right)}{d(S)}}}}->{e\left( S_{1} \right)}}} \\{= {0.90\left( {{{p\left( {S_{2},S_{4}} \right)}{d\left( S_{2} \right)}} + {{p\left( {S_{3},S_{4}} \right)}{d\left( S_{3} \right)}}} \right)}} \\{= {{0.90\left( {{0.15 \cdot 0.85} + {0.40 \cdot 0.75}} \right)}->{e\left( S_{4} \right)}}} \\{= 0.38}\end{matrix}$

The above results represent a first estimate of the demographicsproperty that “users are male” at Websites S₁ and S₄. So in the firstiteration the results are:d(S ₁)=0.61; d(S ₂)=0.85; d(S ₃)=0.75; and d(S ₄)=0.38.

Now the estimation function might be applied again using the resultsfrom the first iteration in order to get a better estimate:

For website S₁:

$\begin{matrix}{{e\left( S_{1} \right)} = {{0.9{\sum\limits_{S \in G}\;{{p\left( {S,S_{1}} \right)}{d(S)}}}}->{e\left( S_{1} \right)}}} \\{= {{0.90\left( {{{p\left( {S_{2},S_{1}} \right)}{d\left( S_{2} \right)}} + {{p\left( {S_{3},S_{1}} \right)}{d\left( S_{3} \right)}} + {{p\left( {S_{4},S_{1}} \right)}{d\left( S_{4} \right)}}} \right)}->{e\left( S_{1} \right)}}} \\{= {{0.90\left( {{0.35 \cdot 0.85} + {0.50 \cdot 0.75} + {0.20 \cdot 0.38}} \right)}->{e\left( S_{1} \right)}}} \\{= 0.67}\end{matrix}$

For website S₄:

$\begin{matrix}{{e\left( S_{4} \right)} = {{0.90{\sum\limits_{S \in G}\;{{p\left( {S,S_{4}} \right)}{d(S)}}}}->{e\left( S_{4} \right)}}} \\{= {{0.90\left( {{{p\left( {S_{2},S_{4}} \right)}{d\left( S_{2} \right)}} + {{p\left( {S_{3},S_{4}} \right)}{d\left( S_{3} \right)}} + {{p\left( {S_{1},S_{4}} \right)}{d\left( S_{1} \right)}}} \right)}->{e\left( S_{4} \right)}}} \\{= {{0.90\left( {{0.15 \cdot 0.85} + {0.40 \cdot 0.75} + {0.10 \cdot 0.61}} \right)}->{e\left( S_{4} \right)}}} \\{= 0.44}\end{matrix}$

So in the second iteration, the results are:d(S ₁)=0.67; d(S ₂)=0.85; d(S ₃)=0.75; and d(S ₄)=0.44.

The estimation function might be applied again using the results fromthe second iteration in order to get a better estimate:

For website S₁:

$\begin{matrix}{{e\left( S_{1} \right)} = {{0.9{\sum\limits_{S \in G}\;{{p\left( {S,S_{1}} \right)}{d(S)}}}}->{e\left( S_{1} \right)}}} \\{= {{0.90\left( {{{p\left( {S_{2},S_{1}} \right)}{d\left( S_{2} \right)}} + {{p\left( {S_{3},S_{1}} \right)}{d\left( S_{3} \right)}} + {{p\left( {S_{4},S_{1}} \right)}{d\left( S_{4} \right)}}} \right)}->{e\left( S_{1} \right)}}} \\{= {{0.90\left( {{0.35 \cdot 0.85} + {0.50 \cdot 0.75} + {0.20 \cdot 0.44}} \right)}->{e\left( S_{1} \right)}}} \\{= 0.68}\end{matrix}$

For website S₄:

$\begin{matrix}{{e\left( S_{4} \right)} = {{0.9{\sum\limits_{S \in G}\;{{p\left( {S,S_{4}} \right)}{d(S)}}}}->{e\left( S_{4} \right)}}} \\{= {{0.90\left( {{{p\left( {S_{2},S_{4}} \right)}{d\left( S_{2} \right)}} + {{p\left( {S_{3},S_{4}} \right)}{d\left( S_{3} \right)}} + {{p\left( {S_{1},S_{4}} \right)}{d\left( S_{1} \right)}}} \right)}->{e\left( S_{4} \right)}}} \\{= {{0.90\left( {{0.15 \cdot 0.85} + {0.40 \cdot 0.75} + {0.10 \cdot 0.67}} \right)}->{e\left( S_{4} \right)}}} \\{= 0.45}\end{matrix}$

So in the third iteration, the results are:d(S ₁)=0.68; d(S ₂)=0.85; d(S ₃)=0.75 and d(S ₄)=0.45.

The estimation function might be applied again using the results fromthe third iteration in order to get a better estimate:

For Website S₁:

$\begin{matrix}{{e\left( S_{1} \right)} = {{0.9{\sum\limits_{S \in G}\;{{p\left( {S,S_{1}} \right)}{d(S)}}}}->{e\left( S_{1} \right)}}} \\{= {{0.90\left( {{{p\left( {S_{2},S_{1}} \right)}{d\left( S_{2} \right)}} + {{p\left( {S_{3},S_{1}} \right)}{d\left( S_{3} \right)}} + {{p\left( {S_{4},S_{1}} \right)}{d\left( S_{4} \right)}}} \right)}->{e\left( S_{1} \right)}}} \\{= {{0.90\left( {{0.35 \cdot 0.85} + {0.50 \cdot 0.75} + {0.20 \cdot 0.45}} \right)}->{e\left( S_{1} \right)}}} \\{= 0.69}\end{matrix}$

For Website S₄:

$\begin{matrix}{{e\left( S_{4} \right)} = {{0.9{\sum\limits_{S \in G}\;{{p\left( {S,S_{4}} \right)}{d(S)}}}}->{e\left( S_{4} \right)}}} \\{= {{0.90\left( {{{p\left( {S_{2},S_{4}} \right)}{d\left( S_{2} \right)}} + {{p\left( {S_{3},S_{4}} \right)}{d\left( S_{3} \right)}} + {{p\left( {S_{1},S_{4}} \right)}{d\left( S_{1} \right)}}} \right)}->{e\left( S_{4} \right)}}} \\{= {{0.90\left( {{0.15 \cdot 0.85} + {0.40 \cdot 0.75} + {0.10 \cdot 0.68}} \right)}->{e\left( S_{4} \right)}}} \\{= 0.45}\end{matrix}$So for the fourth iteration, the results are:d(S ₁)=0.69; d(S ₂)=0.85; d(S ₃)=0.75 and d(S ₄)=0.45.

These results represent, in this exemplary embodiment, a final estimatefor the values given. As a result, it has now been estimatedprobabilistically that 69% of users visiting Website S₁ are male and 45%of users visiting Website S₄ are male. It is possible toprobabilistically estimate any other demographic attribute (e.g., age20-35, age 36-60, household income $70K-$100K, etc.) for Websites S₁ andS₄ in the same manner.

§4.4 Conclusions

As can be appreciated from the foregoing, embodiments consistent withthe present invention may be used to provide useful estimates ofdemographic information for domains, such as Websites for example.

1. A computer-implemented method for determining an estimateddemographic attribute value of a first online document, the methodcomprising: a) accepting, by a computer system including at least onecomputer, a set of one or more known values of a demographic attribute,each of the one or more known demographic attribute values beingassociated with an online document included in a plurality of secondonline documents, wherein each of the second online documents has aknown value for the demographic attribute; b) accepting, by the computersystem, tracked Internet surfing behavior of a plurality of independentusers; c) analyzing, by the computer system and for each of the secondonline documents, the tracked Internet surfing behavior of the pluralityof independent users to determine a probability that a user who hasvisited the second online document will visit or has visited the firstonline document, wherein the probability represents a single pair-wiserelation between the second online document and the first onlinedocument; d) determining, by the computer system, the estimateddemographic attribute value of the first online document using (i) theaccepted known demographic attribute value of each of the second onlinedocuments and (ii) the determined probabilities; and e) associating, bythe computer system, the demographic attribute and its determinedestimated demographic attribute value with the first online document,wherein each of the plurality of second online documents is one of (A) aWebsite, or (B) a Web page for which the demographic attribute value ofthe demographic attribute is known, and wherein the first onlinedocument is one of (A) a Website, or (B) a Web page for which theestimated demographic attribute value of the demographic attribute isdetermined.
 2. The computer-implemented method of claim 1 wherein theact of determining the estimated demographic attribute value of thefirst online document includes summing, over the plurality of secondonline documents, a product of (i) the probability that the particularuser who has visited the second online document will visit or hasvisited the first online document and (ii) the known demographicattribute value of the second online document.
 3. Thecomputer-implemented method of claim 2 wherein the act of determiningthe estimated demographic attribute value of the first online documentincludes multiplying the sum by a predetermined damping factor.
 4. Thecomputer-implemented method of claim 1 wherein the first online documentdoes not initially have a value for the demographic attribute.
 5. Acomputer-implemented method for determining an estimated demographicattribute value of a set of one or more first online documents, themethod comprising: a) accepting, by a computer system including at leastone computer, a set of one or more known values of a demographicattribute, each of the one or more known demographic attribute valuesbeing associated with an online document included in a plurality ofsecond online documents, wherein each of the second online documents hasa known value for the demographic attribute; b) accepting, by thecomputer system, tracked Internet surfing behavior of a plurality ofIndependent users; c) analyzing, by the computer system and for each ofthe one or more first online documents, and for each of a plurality ofother first and second online documents, the tracked Internet surfingbehavior of the plurality of independent users to determine aprobability that a user who has visited the other online document, willvisit or has visited the first online document; d) determining, by thecomputer system, for each of the one or more first online documents, theestimated demographic attribute value of the first online document using(i) the accepted known demographic attribute value of each of the secondonline documents and (ii) the determined probabilities that a particularuser who has visited the other online document, will visit or hasvisited the first online document; e) for each of the one or more firstonline documents, determining, by the computer system, an updatedestimated demographic attribute value of the first online document using(i) the known demographic attribute value of each of the second onlinedocuments and the determined demographic attribute value of each of theother first online documents and (ii) the determined probabilities thata user will visit or has visited the first online document and each ofthe other online documents; and f) associating, by the computer system,the demographic attribute and its determined estimated demographicattribute value with the first online document, wherein each of theplurality of second online documents is one of (A) a Website, or (B) aWeb page for which the demographic attribute value of the demographicattribute is known, and wherein the first online document is one of (A)a Website, or (B) a Web page for which the estimated demographicattribute value of the demographic attribute is determined.
 6. Thecomputer-implemented method of claim 5 wherein act (d) is repeated atleast once.
 7. The computer-implemented method of claim 5 wherein act(e) is repeated until the updated estimated demographic attribute valuesdon't change from the previously determined updated estimateddemographic attribute values.
 8. The computer-implemented method ofclaim 5 wherein the act of determining, for each of the first onlinedocuments, the estimated demographic attribute value of the first onlinedocument includes summing, over all the second online documents, aproduct of (i) the determined probabilities that a user who has visitedthe second online document, will visit or has visited the first onlinedocument and (ii) the known demographic attribute value of the secondonline document.
 9. The computer-implemented method of claim 8 whereinthe act of determining, for each of the first online documents, theestimated demographic attribute value of the first online documentincludes multiplying the sum by a predetermined damping factor.
 10. Thecomputer-implemented method of claim 5 wherein each of the first onlinedocuments does not initially have a value for the demographic attribute.11. Apparatus for determining an estimated demographic attribute valueof a first online document, the apparatus comprising: a) at least oneprocessor; b) an input device; and c) at least one storage devicestoring a computer executable code which, when executed by the at leastone processor, performs a method of 1) accepting a set of one or moreknown values of a demographic attribute, each of the one or more knowndemographic attribute values being associated with an online documentincluded in a plurality of second online documents, wherein each of thesecond online documents has, a known value for the demographicattribute, 2) accepting tracked Internet surfing behavior of a pluralityof Independent users, 3) for each of the second online documents havingan accepted known demographic attribute value, analyzing the trackedInternet surfing behavior of a plurality of independent users todetermine a probability that a user who has visited the second onlinedocument will visit or has visited the first online document, whereinthe probability represents a single pair-wise relation between thesecond online document and the first online document, 4) the estimateddemographic attribute value of the first online document using (i) theaccepted known demographic attribute value of each of the second onlinedocuments and (ii) the determined probabilities, and 5) associating thedemographic attribute and its determined estimated demographic attributevalue with the first online document, wherein each of the plurality ofsecond online documents is one of (A) a Website, or (B) a Web page forwhich the demographic attribute value of the demographic attribute isknown, and wherein the first online document is one of (A) a Website, or(B) a Web page for which the estimated demographic attribute value ofthe demographic attribute is determined.
 12. The apparatus of claim 11wherein the first online document does not initially have a value forthe demographic attribute.
 13. Apparatus for determining an estimateddemographic attribute value of a set of one or more first onlinedocuments, the apparatus comprising: a) at least one processor; b) aninput device; and c) at least one storage device storing a computerexecutable code which, when executed by the at least one processor,performs a method of 1) accepting a set of one or more known values of ademographic attribute, each of the one or more known demographicattribute values being associated with an online document included in aplurality of second online documents, wherein each of the second onlinedocuments has a known value for the demographic attribute, 2) acceptingtracked Internet surfing behavior of a plurality of Independent users,3) for each of the one or more first online documents, and for each of aplurality of other first and second online documents, analyzing thetracked Internet surfing behavior of a plurality of independent users todetermine a probability that a user who has visited the other onlinedocument, will visit or has visited the first online document, 4)determining, by the computer system, for each of the one or more firstonline documents, the estimated demographic attribute value of the firstonline document using (i) the accepted known demographic attribute valueof each of the second online documents and (ii) the determinedprobabilities that a particular user who has visited the other onlinedocument, will visit or has visited the first online document, 5)determining, for each of the one or more first online documents, anupdated estimated demographic attribute value of the first onlinedocument using (i) the known demographic attribute value of each of thesecond online documents and the determined demographic attribute valueof each of the other first online documents and (ii) the determinedprobabilities that a user will visit or has visited the first onlinedocument and each of the other online documents, and 6) associating thedemographic attribute and its determined estimated demographic attributevalue with the first online document, wherein each of the plurality ofsecond online documents is one of (A) a Website, or (B) a Web page forwhich the demographic attribute value of the demographic attribute isknown, and wherein the first online document is one of (A) a Website, or(B) a Web page for which the estimated demographic attribute value ofthe demographic attribute is determined.
 14. The apparatus of claim 13wherein each of the first online documents does not initially have avalue for the demographic attribute.
 15. Apparatus for determining anestimated demographic attribute value of a first online document, theapparatus comprising: a) a network-based server module for acceptingdemographic attributes for documents on the network to determinedocument visit probabilities, including; 1) a set of one or more knownvalues of a demographic attribute, each of the one or more knowndemographic attribute values being associated with an online documentincluded in a plurality of second online documents, wherein each of thesecond online documents has a known value for the demographic attribute,and 2) tracked Internet surfing behavior of a plurality of Independentusers; b) a network-based server module for analyzing, for each of thesecond online documents having an accepted known demographic attributevalue, the tracked Internet surfing behavior of the plurality ofindependent users to determine a probability that a user who has visitedthe second online document will visit or has visited the first onlinedocument, wherein the probability represents a single pair-wise relationbetween the second online document and the first online document; c) anetwork-based server module for determining the estimated demographicattribute value of the first online document using (i) the acceptedknown demographic attribute value of each of the second online documentsand (ii) the determined probabilities; and d) a network-based servermodule for associating the demographic attribute and its determinedestimated demographic attribute value with the first online document,wherein each of the plurality of second online documents is one of (A) aWebsite, or (B) a Web page for which the demographic attribute value ofthe demographic attribute is known, and wherein the first onlinedocument is one of (A) a Website, or (B) a Web page for which theestimated demographic attribute value of the demographic attribute isdetermined.
 16. The apparatus of claim 15 wherein the network-basedserver modules are part of an advertising server network.
 17. Theapparatus of claim 15 wherein the network-based server modules are partof a distributed server network.
 18. The apparatus of claim 15 whereinthe second and first online documents are both Web pages.
 19. Theapparatus of claim 15 wherein the second and first online documents areboth Websites.
 20. The apparatus of claim 15 wherein the first onlinedocument does not initially have a value for the demographic attribute.21. Apparatus for determining an estimated demographic attribute valueof a set of one or more first online documents, the apparatuscomprising: a) a network-based server module for accepting demographicattributes for documents on the network to determine document visitprobabilities, including 1) a set of one or more known values of ademographic attribute, each of the one or more known demographicattribute values being associated with an online document included in aplurality of second online documents, wherein each of the second onlinedocuments has a known value for the demographic attribute, and 2)tracked Internet surfing behavior of a plurality of Independent users;b) a network-based server module for analyzing, for each of the one ormore first online documents, and for each of a plurality of other firstand second online documents, the tracked Internet surfing behavior ofthe plurality of independent users to determine a probability that auser who has visited the other online document, will visit or hasvisited the first online document; c) a network-based server module fordetermining, for each of the one or more first online documents, theestimated demographic attribute value of the first online document using(i) the accepted known demographic attribute value of each of the secondonline documents and (ii) the determined probabilities that a particularuser who has visited the other online document, will visit or hasvisited the first online document; d) a network-based server module fordetermining, for each of the one or more first online documents, anupdated estimated demographic attribute value of the first onlinedocument using (i) the known demographic attribute value of each of thesecond online documents and the determined demographic attribute valueof each of the other first online documents and (ii) the determinedprobabilities that a user will visit or has visited the first onlinedocument and each of the other online documents; and e) a network-basedserver module for associating the demographic attribute and itsdetermined estimated demographic attribute value with the first onlinedocument, wherein each of the plurality of second online documents isone of (A) a Website, or (B) a Web page for which the demographicattribute value of the demographic attribute is known, and wherein thefirst online document is one of (A) a Website, or (B) a Web page forwhich the estimated demographic attribute value of the demographicattribute is determined.
 22. The apparatus of claim 21 wherein thenetwork-based server modules are part of an advertising server.
 23. Theapparatus of claim 21 wherein the network-based server modules are partof a distributed server network.
 24. The apparatus of claim 21 whereinthe second and first online documents are, both Web pages.
 25. Theapparatus of claim 21 wherein the second and first online documents areboth Websites.
 26. The apparatus of claim 21 wherein each of the firstonline documents does not initially have a value for the demographicattribute.